import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';

import { MessageRoutingModule } from './message-routing.module';
import { WebMessageListComponent } from './components/web-message-list/web-message-list.component';
import { ClientMessageListComponent } from './components/client-message-list/client-message-list.component';
import { MessageComponent } from './components/message/message.component';
import { ShareModule } from '../share/share.module';
import { MessageTemplateComponent } from './components/message-template/message-template.component';
import { WebMessageSendComponent } from './components/web-message-send/web-message-send.component';
import { ClientMessageSendComponent } from './components/client-message-send/client-message-send.component';
import { MessageTemplateAddComponent } from './components/message-template-add/message-template-add.component';
import { MatRadioModule, MatCheckboxModule, MatTabsModule } from '@angular/material';
import { ZoneInfoPipe } from './pipes/zone-info.pipe';
import { TimingComponent } from './components/client-message-send/timing/timing.component';
import { ScheduleComponent } from './components/client-message-send/schedule/schedule.component';
import { ReceiverComponent } from './components/client-message-send/receiver/receiver.component';

import { WebMessageDetailComponent } from './components/web-message-detail/web-message-detail.component';
import { MarkdownEditDirective } from './directives/markdown-edit.directive';
import { TimeFormControlDirective } from './directives/time-form-control.directive';
import { ClientMessageDetailComponent } from './components/client-message-detail/client-message-detail.component';

@NgModule({
	declarations: [
		WebMessageListComponent,
		ClientMessageListComponent,
		MessageComponent,
		MessageTemplateComponent,
		WebMessageSendComponent,
		ClientMessageSendComponent,
		MessageTemplateAddComponent,
		ZoneInfoPipe,
		TimingComponent,
		ScheduleComponent,
		ReceiverComponent,
		WebMessageDetailComponent,
		MarkdownEditDirective,
		TimeFormControlDirective,
		ClientMessageDetailComponent,
	],
	entryComponents: [ClientMessageSendComponent],
	imports: [CommonModule, MessageRoutingModule, ShareModule, MatRadioModule, MatCheckboxModule, MatTabsModule],
})
export class MessageModule {}
